home *** CD-ROM | disk | FTP | other *** search
/ CU Amiga Super CD-ROM 6 / CU Amiga Magazine's Super CD-ROM 06 (1996)(EMAP Images)(GB)(Track 1 of 4)[!][issue 1997-01].iso / cucd / readers / utils / gui4cli / demos / ppshow.gc < prev    next >
Text File  |  1996-10-28  |  6KB  |  185 lines

  1. G4C 
  2.  
  3. ; This is a file which is supposed to be loaded and used by the MMedia.gc
  4. ; file, but can just as easily be run on its own.
  5.  
  6. ; Its a GUI for the excellent and free Graphics and ANIM player PPShow 4
  7. ; (it also works with older versions of ppshow)
  8.  
  9.  
  10. WINBIG   -1 30 340 132 "PPShow 4.0 GUI"
  11. wintype  11110001          ; a resizable window
  12. WinSmall 0 -1 -1 -1
  13.  
  14. ;============================> Some Graphics (to fill in space)
  15. LINE 90 53 330 53 1
  16. LINE 90 54 330 54 2
  17.  
  18. LINE 90 76 330 76 1
  19. LINE 90 77 330 77 2
  20.  
  21. ;============================> AppWindow
  22.  
  23. xAPPWINDOW ppsfile                ; We hereby make the window an AppWindow
  24. if $ppsfile > ""                  ; All files dropped into it will go in ppsfile
  25.    update ppshow.gc 1 $ppsfile    ; We update the TEXT gadget with the file name
  26.    update MMedia.gc  1 $ppsfile   ; We also update the TEXT gadget in the MMedia.gc    
  27.    gosub ppshow.gc play           ; See routine at the end of the file.
  28. endif
  29.  
  30. ;--------------> Upon Loading, we check if MMedia.gc is loaded or not.
  31. ; If loaded, we update our filename, Jifs and Times gadgets as they may have
  32. ; been changed from MMedia.gc. - Otherwise, we set the default values of our
  33. ; variables.
  34.  
  35. xONLOAD
  36. SetGad ppshow.gc 10 OFF ; Starting state of our TIME slider
  37. IfExists GUI MMedia.gc
  38.   update ppshow.gc 1  $ppsfile
  39.   update ppshow.gc 11 $ppstimes
  40.   update ppshow.gc 15 $ppsjifs
  41. else
  42.   setvar ppsjifs  3            ; Jiffs (speed) - less is faster
  43.   setvar ppsJifGad "J=3"       ; Command line option for jifs
  44.   setvar ppstimes 100          ; Times to play animation
  45.   setvar ppsTimesGad "T=100"   ; command line option for times to play
  46.   setvar ppstime 60            ; Time to play each picture
  47.   setvar ppsTimeGad ""         ; Command line option for Time - (OFF)
  48.   setvar ppslace  NL           ; Lace / NoLace
  49.   setvar ppsmouse NOMOUSE      ; Mouse / NoMouse
  50.   setvar ppsfile  ""           ; File(s) to play for ppshow
  51. endif
  52.  
  53. ;===> On Opening the window we refresh the gadgets which may have changed
  54. ;     while the window was closed.
  55.  
  56. xONOPEN
  57. if $ppsfile > ""
  58.    update ppshow.gc 1  $ppsfile  ; TEXT gadget with file name
  59. else
  60.    update ppshow.gc 1 "No file chosen"
  61. endif
  62. update ppshow.gc 11 $ppstimes    ; Times slider
  63. update ppshow.gc 15 $ppsjifs     ; Jifs (speed) slider
  64.  
  65. ;====================> Declare a cycler, to let the user
  66. ;                      choose the type of monitor.
  67.  
  68. xCYCLER 205 5 121 12 "" ppsmode
  69. CSTR  PAL     PAL
  70. CSTR  A2024   A2024
  71. CSTR  15Hz    15Hz
  72. CSTR  NTSC    NTSC
  73. CSTR  VGA     VGA
  74. CSTR  SUPER72 SUPER72
  75.  
  76. ;Note that we set the PAL first. That's because I use PAL, and want it
  77. ;as default - change it around if you want otherwise.
  78.  
  79. ;===================> An other cycler for the Resolution Modes
  80.  
  81. xCYCLER 60 5 125 12 Res. ppsres
  82. CSTR  Default      " "
  83. CSTR  LOW          LO
  84. CSTR  HIGH         HI
  85. CSTR  "Super HIGH" SHI
  86. CSTR  Productive   PROD
  87. CSTR  HAM          HAM
  88.  
  89. ;===================> Cycler for Loop/Repeat/Single play of anims
  90.  
  91. xCYCLER 205 20 121 12 "" ppsplay
  92. CSTR  SINGLE  " "
  93. CSTR  LOOP    LOOP
  94. CSTR  REPEAT  R
  95.  
  96. ;====================> Declare some checkbox button for lace, mouse, oscn etc
  97.  
  98. xCHECKBOX 60  20 26 11 Lace   ppslace  L      NL      OFF
  99. xCHECKBOX 140 20 26 11 NoFlk  ppsflik  NF     " "     OFF
  100. xCHECKBOX 60  35 26 11 DTyp   ppsdatt  DT     " "     OFF
  101. xCHECKBOX 140 35 26 11 Mouse  ppsmouse " "    NOMOUSE OFF
  102. xCHECKBOX 220 35 26 11 Oscn   ppsoscn  MO     NO      OFF
  103. xCHECKBOX 300 35 26 11 Cycle  ppscycle CYCLE  " "     OFF
  104.  
  105. ;----> Checkbox for Animation ON/OFF (also turns the jifs slider ON/OFF)
  106.  
  107. xCHECKBOX 300 60 26 11 ""     ppsnoan  "" NOANIM  ON
  108. if $ppsnoan = ""
  109.    SetGad ppshow.gc 15 ON
  110.    SetGad MMedia.gc 22 ON
  111.    SetVar ppsJifGad "J= $ppsjifs"
  112. else
  113.    SetGad ppshow.gc 15 OFF
  114.    SetGad MMedia.gc 22 OFF
  115.    SetVar ppsJifGad ""
  116. endif
  117.  
  118. ;=========================== ICON - Press to Play
  119.  
  120. xICON 17 55 GUIs:info/Play
  121. gosub ppshow.gc play
  122.  
  123. ;=================== Sliders for speed time & times to play ============
  124.  
  125. ;----> Slider for speed
  126.  
  127. xHSLIDER 130 60 170 11 "" ppsjifs 0 10 3 "%2ldJfs"
  128. GadID 15
  129. GadTitle RIGHT
  130. update MMedia.gc 22 $ppsjifs
  131. SetVar ppsJifGad "J= $ppsjifs"
  132.  
  133. ;-----> Slider for Time with checkbox to turn it on or off
  134.  
  135. xHSLIDER 40 100 210 11 "" ppstime  1 999  60  "%3ld Sec."
  136. GadID 10
  137. setvar ppsTimeGad "TIME= $ppstime"
  138.  
  139. xCHECKBOX 10  100 26 11 "" ppsTimeGad "TIME= $ppstime" "" OFF
  140. if $ppsTimeGad = ""
  141.    SetGad ppshow.gc 10 OFF  ; Set slider on/off as per value of checkbox
  142. else 
  143.    SetGad ppshow.gc 10 ON
  144. endif
  145.  
  146. ;-----> Slider for Times to play with checkbox to turn it on or off
  147.  
  148. xHSLIDER 40 113 210 11 "" ppstimes 1 999  100 "%3ld Times"
  149. GadID 11
  150. setvar ppsTimesGad "T= $ppstimes"
  151. Update MMedia.gc 21 $ppstimes
  152.  
  153. xCHECKBOX 10 113 26 11 "" ppsTimesGad "T= $ppstimes" "" ON
  154. if $ppsTimesGad = ""
  155.    SetGad ppshow.gc 11 OFF
  156.    SetGad MMedia.gc 21 OFF
  157. else 
  158.    SetGad ppshow.gc 11 ON
  159.    SetGad MMedia.gc 21 ON
  160. endif
  161.  
  162. ;================= File request for PPShow ============================
  163.  
  164. xBUTTON 10 83 20 12 "R"
  165. REQFILE -1 -1 300 -40 "Choose Graphics" MULTI ppsfile sys:
  166. update ppshow.gc 1 $ppsfile
  167. update MMedia.gc  1 $ppsfile
  168. gosub ppshow.gc play
  169.  
  170. ;==========> This is the routine that plays the file(s)
  171. xROUTINE play
  172. if $ppsfile = ""                             ;If no file was chosen
  173.   update ppshow.gc  1 "No file chosen"       ;tell the user
  174.   update MMedia.gc  1 "No file chosen"
  175. else
  176.   RUN 'ppshow >NIL: $ppsfile $ppsJifGad $ppsTimeGad $ppsTimesGad $ppsmode $ppsres $ppsplay $ppslace $ppsflik $ppsdatt $ppsmouse $ppsoscn $ppscycle $ppsnoan'
  177. endif
  178.  
  179. ;========== TEXT box - contains file name
  180.  
  181. TEXT 35 83 293 12 "No file chosen" 80 BOX
  182. GADID 1
  183. GADTXT RIGHT
  184.  
  185.